<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>GimpCairo: GIMP 3 Color Library Reference Manual</title>
<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot">
<link rel="home" href="index.html" title="GIMP 3 Color Library Reference Manual">
<link rel="up" href="pt01.html" title="Part I. GIMP Color Library">
<link rel="prev" href="libgimpcolor3-GimpBilinear.html" title="GimpBilinear">
<link rel="next" href="libgimpcolor3-GimpPixbuf.html" title="GimpPixbuf">
<meta name="generator" content="GTK-Doc V1.33.0 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
<td width="100%" align="left" class="shortcuts">
<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
                  <a href="#libgimpcolor3-GimpCairo.description" class="shortcut">Description</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
<td><a accesskey="u" href="pt01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="libgimpcolor3-GimpBilinear.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="libgimpcolor3-GimpPixbuf.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="refentry">
<a name="libgimpcolor3-GimpCairo"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="libgimpcolor3-GimpCairo.top_of_page"></a>GimpCairo</span></h2>
<p>GimpCairo — Color utility functions for cairo</p>
</td>
<td class="gallery_image" valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
<a name="libgimpcolor3-GimpCairo.functions"></a><h2>Functions</h2>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="functions_proto_type">
<col class="functions_proto_name">
</colgroup>
<tbody>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="libgimpcolor3-GimpCairo.html#gimp-cairo-set-source-rgb" title="gimp_cairo_set_source_rgb ()">gimp_cairo_set_source_rgb</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="libgimpcolor3-GimpCairo.html#gimp-cairo-set-source-rgba" title="gimp_cairo_set_source_rgba ()">gimp_cairo_set_source_rgba</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">cairo_pattern_t</span> *
</td>
<td class="function_name">
<a class="link" href="libgimpcolor3-GimpCairo.html#gimp-cairo-checkerboard-create" title="gimp_cairo_checkerboard_create ()">gimp_cairo_checkerboard_create</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">const <span class="returnvalue">Babl</span> *
</td>
<td class="function_name">
<a class="link" href="libgimpcolor3-GimpCairo.html#gimp-cairo-surface-get-format" title="gimp_cairo_surface_get_format ()">gimp_cairo_surface_get_format</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">GeglBuffer</span> *
</td>
<td class="function_name">
<a class="link" href="libgimpcolor3-GimpCairo.html#gimp-cairo-surface-create-buffer" title="gimp_cairo_surface_create_buffer ()">gimp_cairo_surface_create_buffer</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="define_keyword">#define</td>
<td class="function_name">
<a class="link" href="libgimpcolor3-GimpCairo.html#GIMP-CAIRO-RGB24-SET-PIXEL:CAPS" title="GIMP_CAIRO_RGB24_SET_PIXEL()">GIMP_CAIRO_RGB24_SET_PIXEL</a><span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="define_keyword">#define</td>
<td class="function_name">
<a class="link" href="libgimpcolor3-GimpCairo.html#GIMP-CAIRO-RGB24-GET-PIXEL:CAPS" title="GIMP_CAIRO_RGB24_GET_PIXEL()">GIMP_CAIRO_RGB24_GET_PIXEL</a><span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="define_keyword">#define</td>
<td class="function_name">
<a class="link" href="libgimpcolor3-GimpCairo.html#GIMP-CAIRO-ARGB32-SET-PIXEL:CAPS" title="GIMP_CAIRO_ARGB32_SET_PIXEL()">GIMP_CAIRO_ARGB32_SET_PIXEL</a><span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="define_keyword">#define</td>
<td class="function_name">
<a class="link" href="libgimpcolor3-GimpCairo.html#GIMP-CAIRO-ARGB32-GET-PIXEL:CAPS" title="GIMP_CAIRO_ARGB32_GET_PIXEL()">GIMP_CAIRO_ARGB32_GET_PIXEL</a><span class="c_punctuation">()</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="libgimpcolor3-GimpCairo.description"></a><h2>Description</h2>
<p>Utility functions that make cairo easier to use with GIMP color
data types.</p>
</div>
<div class="refsect1">
<a name="libgimpcolor3-GimpCairo.functions_details"></a><h2>Functions</h2>
<div class="refsect2">
<a name="gimp-cairo-set-source-rgb"></a><h3>gimp_cairo_set_source_rgb ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gimp_cairo_set_source_rgb (<em class="parameter"><code><span class="type">cairo_t</span> *cr</code></em>,
                           <em class="parameter"><code>const <a class="link" href="libgimpcolor3-GimpRGB.html#GimpRGB" title="struct GimpRGB"><span class="type">GimpRGB</span></a> *color</code></em>);</pre>
<p>Sets the source pattern within <em class="parameter"><code>cr</code></em>
 to the solid opaque color
described by <em class="parameter"><code>color</code></em>
.</p>
<p>This function calls <code class="function">cairo_set_source_rgb()</code> for you.</p>
<div class="refsect3">
<a name="gimp-cairo-set-source-rgb.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>cr</p></td>
<td class="parameter_description"><p>Cairo context</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>color</p></td>
<td class="parameter_description"><p>GimpRGB color</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-2-6.html#api-index-2.6">2.6</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gimp-cairo-set-source-rgba"></a><h3>gimp_cairo_set_source_rgba ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gimp_cairo_set_source_rgba (<em class="parameter"><code><span class="type">cairo_t</span> *cr</code></em>,
                            <em class="parameter"><code>const <a class="link" href="libgimpcolor3-GimpRGB.html#GimpRGB" title="struct GimpRGB"><span class="type">GimpRGB</span></a> *color</code></em>);</pre>
<p>Sets the source pattern within <em class="parameter"><code>cr</code></em>
 to the solid translucent color
described by <em class="parameter"><code>color</code></em>
.</p>
<p>This function calls <code class="function">cairo_set_source_rgba()</code> for you.</p>
<div class="refsect3">
<a name="gimp-cairo-set-source-rgba.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>cr</p></td>
<td class="parameter_description"><p>Cairo context</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>color</p></td>
<td class="parameter_description"><p>GimpRGB color</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-2-6.html#api-index-2.6">2.6</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gimp-cairo-checkerboard-create"></a><h3>gimp_cairo_checkerboard_create ()</h3>
<pre class="programlisting"><span class="returnvalue">cairo_pattern_t</span> *
gimp_cairo_checkerboard_create (<em class="parameter"><code><span class="type">cairo_t</span> *cr</code></em>,
                                <em class="parameter"><code><span class="type">gint</span> size</code></em>,
                                <em class="parameter"><code>const <a class="link" href="libgimpcolor3-GimpRGB.html#GimpRGB" title="struct GimpRGB"><span class="type">GimpRGB</span></a> *light</code></em>,
                                <em class="parameter"><code>const <a class="link" href="libgimpcolor3-GimpRGB.html#GimpRGB" title="struct GimpRGB"><span class="type">GimpRGB</span></a> *dark</code></em>);</pre>
<p>Create a repeating checkerboard pattern.</p>
<div class="refsect3">
<a name="gimp-cairo-checkerboard-create.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>cr</p></td>
<td class="parameter_description"><p>Cairo context</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>size</p></td>
<td class="parameter_description"><p>check size</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>light</p></td>
<td class="parameter_description"><p>light check color or <code class="literal">NULL</code> to use the default light gray</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>dark</p></td>
<td class="parameter_description"><p>dark check color or <code class="literal">NULL</code> to use the default dark gray</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gimp-cairo-checkerboard-create.returns"></a><h4>Returns</h4>
<p> a new Cairo pattern that can be used as a source on <em class="parameter"><code>cr</code></em>
.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-6.html#api-index-2.6">2.6</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gimp-cairo-surface-get-format"></a><h3>gimp_cairo_surface_get_format ()</h3>
<pre class="programlisting">const <span class="returnvalue">Babl</span> *
gimp_cairo_surface_get_format (<em class="parameter"><code><span class="type">cairo_surface_t</span> *surface</code></em>);</pre>
<p>This function returns a <span class="type">Babl</span> format that corresponds to <em class="parameter"><code>surface</code></em>
's
pixel format.</p>
<div class="refsect3">
<a name="gimp-cairo-surface-get-format.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>surface</p></td>
<td class="parameter_description"><p>a Cairo surface</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gimp-cairo-surface-get-format.returns"></a><h4>Returns</h4>
<p> the <span class="type">Babl</span> format of <em class="parameter"><code>surface</code></em>
.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-10.html#api-index-2.10">2.10</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gimp-cairo-surface-create-buffer"></a><h3>gimp_cairo_surface_create_buffer ()</h3>
<pre class="programlisting"><span class="returnvalue">GeglBuffer</span> *
gimp_cairo_surface_create_buffer (<em class="parameter"><code><span class="type">cairo_surface_t</span> *surface</code></em>);</pre>
<p>This function returns a <span class="type">GeglBuffer</span> which wraps <em class="parameter"><code>surface</code></em>
's pixels.
It must only be called on image surfaces, calling it on other surface
types is an error.</p>
<div class="refsect3">
<a name="gimp-cairo-surface-create-buffer.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>surface</p></td>
<td class="parameter_description"><p>a Cairo surface</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gimp-cairo-surface-create-buffer.returns"></a><h4>Returns</h4>
<p>a <span class="type">GeglBuffer</span>. </p>
<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-10.html#api-index-2.10">2.10</a></p>
</div>
<hr>
<div class="refsect2">
<a name="GIMP-CAIRO-RGB24-SET-PIXEL:CAPS"></a><h3>GIMP_CAIRO_RGB24_SET_PIXEL()</h3>
<pre class="programlisting">#define             GIMP_CAIRO_RGB24_SET_PIXEL(d, r, g, b)</pre>
<p>Sets a single pixel in an Cairo image surface in <code class="literal">CAIRO_FORMAT_RGB24</code>.</p>
<div class="refsect3">
<a name="GIMP-CAIRO-RGB24-SET-PIXEL.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>d</p></td>
<td class="parameter_description"><p>pointer to the destination buffer</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>r</p></td>
<td class="parameter_description"><p>red component</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>g</p></td>
<td class="parameter_description"><p>green component</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>b</p></td>
<td class="parameter_description"><p>blue component</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-2-6.html#api-index-2.6">2.6</a></p>
</div>
<hr>
<div class="refsect2">
<a name="GIMP-CAIRO-RGB24-GET-PIXEL:CAPS"></a><h3>GIMP_CAIRO_RGB24_GET_PIXEL()</h3>
<pre class="programlisting">#define             GIMP_CAIRO_RGB24_GET_PIXEL(s, r, g, b)</pre>
<p>Gets a single pixel from a Cairo image surface in <code class="literal">CAIRO_FORMAT_RGB24</code>.</p>
<div class="refsect3">
<a name="GIMP-CAIRO-RGB24-GET-PIXEL.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>s</p></td>
<td class="parameter_description"><p>pointer to the source buffer</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>r</p></td>
<td class="parameter_description"><p>red component</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>g</p></td>
<td class="parameter_description"><p>green component</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>b</p></td>
<td class="parameter_description"><p>blue component</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-2-8.html#api-index-2.8">2.8</a></p>
</div>
<hr>
<div class="refsect2">
<a name="GIMP-CAIRO-ARGB32-SET-PIXEL:CAPS"></a><h3>GIMP_CAIRO_ARGB32_SET_PIXEL()</h3>
<pre class="programlisting">#define             GIMP_CAIRO_ARGB32_SET_PIXEL(d, r, g, b, a)</pre>
<p>Sets a single pixel in an Cairo image surface in <code class="literal">CAIRO_FORMAT_ARGB32</code>.</p>
<div class="refsect3">
<a name="GIMP-CAIRO-ARGB32-SET-PIXEL.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>d</p></td>
<td class="parameter_description"><p>pointer to the destination buffer</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>r</p></td>
<td class="parameter_description"><p>red component, not pre-multiplied</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>g</p></td>
<td class="parameter_description"><p>green component, not pre-multiplied</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>b</p></td>
<td class="parameter_description"><p>blue component, not pre-multiplied</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>a</p></td>
<td class="parameter_description"><p>alpha component</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-2-6.html#api-index-2.6">2.6</a></p>
</div>
<hr>
<div class="refsect2">
<a name="GIMP-CAIRO-ARGB32-GET-PIXEL:CAPS"></a><h3>GIMP_CAIRO_ARGB32_GET_PIXEL()</h3>
<pre class="programlisting">#define             GIMP_CAIRO_ARGB32_GET_PIXEL(s, r, g, b, a)</pre>
<p>Gets a single pixel from a Cairo image surface in <code class="literal">CAIRO_FORMAT_ARGB32</code>.</p>
<div class="refsect3">
<a name="GIMP-CAIRO-ARGB32-GET-PIXEL.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>s</p></td>
<td class="parameter_description"><p>pointer to the source buffer</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>r</p></td>
<td class="parameter_description"><p>red component, not pre-multiplied</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>g</p></td>
<td class="parameter_description"><p>green component, not pre-multiplied</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>b</p></td>
<td class="parameter_description"><p>blue component, not pre-multiplied</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>a</p></td>
<td class="parameter_description"><p>alpha component</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-2-8.html#api-index-2.8">2.8</a></p>
</div>
</div>
</div>
<div class="footer">
<hr>Generated by GTK-Doc V1.33.0</div>
</body>
</html>